//
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
// Parameters:
//
//   sampler2D $DepthBuffer;
//   float4 $FalloffFactors;
//   float4 $LightColor;
//   float4 $LightSpecularColor;
//   float4x4 $MaskProjectionMatrix;
//   sampler2D $MaskTexture;
//   sampler2D $NormalBuffer;
//   float4 $SpotDirection;
//   float4 $ViewSpaceLightPosition;
//   float4 GlobalGBufferOffset;
//   float4 GlobalGBufferScale;
//   float4 GlobalPosDecodingParams;
//
//
// Registers:
//
//   Name                    Reg   Size
//   ----------------------- ----- ----
//   $LightColor             c10      1
//   $LightSpecularColor     c11      1
//   $ViewSpaceLightPosition c12      1
//   $FalloffFactors         c13      1
//   $SpotDirection          c14      1
//   $MaskProjectionMatrix   c15      4
//   GlobalGBufferOffset     c218     1
//   GlobalPosDecodingParams c219     1
//   GlobalGBufferScale      c223     1
//   $MaskTexture            s0       1
//   $NormalBuffer           s6       1
//   $DepthBuffer            s10      1
//

    ps_3_0
    def c0, 2, -1, 1, 0
    def c1, 1024, 0.212599993, 0.715200007, 0.0722000003
    dcl vPos.xy
    dcl_2d s0
    dcl_2d s6
    dcl_2d s10
    mov r0, c223
    mad r0, vPos.xyxy, r0, c218
    texld_pp r1, r0, s10
    mad r1.x, r1.x, c219.z, c219.w
    rcp r1.x, r1.x
    mad r1.yzw, r0.xzwz, c0.xzzw, c0.xwwz
    texld_pp r0, r0, s6
    mad r2.xyz, r1.yzww, -r1.x, c12
    mul r1.xyz, r1.x, r1.yzww
    dp3 r1.w, r2, c14
    nrm r3.xyz, r2
    mul r1.w, r1.w, r1.w
    mad_sat_pp r1.w, c13.x, r1.w, c13.y
    dp3 r2.x, r3, c14
    mad_sat_pp r2.x, c13.z, -r2.x, c13.w
    mul_pp r1.w, r1.w, r2.x
    mul r2.xyz, r1.w, c10
    mul r1.w, r1.w, c11.w
    mul r4, r1.y, c16
    mad r4, c15, r1.x, r4
    mad r4, c17, r1.z, r4
    add r4, r4, c18
    texldp_pp r4, r4, s0
    mul r2.xyz, r2, r4
    dp3_pp r2.w, r4, c1.yzww
    mul r1.w, r1.w, r2.w
    mad_pp r4.xyz, r0.yzww, c0.x, c0.y
    mul_pp r0.x, r0.x, c1.x
    dp2add_pp r0.y, r4, -r4, c0.z
    rsq_pp r0.y, r0.y
    rcp_pp r0.y, r0.y
    mul_pp r4.w, r4.z, r0.y
    dp3_sat_pp r0.y, r4.xyww, r3
    mul oC0.xyz, r0.y, r2
    dp3 r0.z, r1, r1
    rsq r0.z, r0.z
    mad r1.xyz, r1, -r0.z, r3
    nrm r2.xyz, r1
    dp3_sat r0.z, r2, r4.xyww
    pow r1.x, r0.z, r0.x
    mul_pp r0.x, r0.y, r1.x
    mul oC0.w, r0.x, r1.w

// approximately 49 instruction slots used (3 texture, 46 arithmetic)
 